Conventionally, a motor control device has been developed which stabilizes the behavior of the gravity shaft in a robot such as a manipulator to prevent the gravity shaft from falling when power is supplied to the servomotor which drives the gravity shaft.
Conventional motor control device 900 will be described with reference to FIG. 6 and FIG. 7. FIG. 6 illustrates conventional motor control device 900. FIG. 7 illustrates the details of proportional-integral (PD controller 901 of conventional motor control device 900.
As illustrated in FIG. 6, conventional motor control device 900 includes PI controller 901, current controller 902, inverter circuit 903, motor 904, encoder 905, converter 906, storage 907, and breaking device 908. Encoder 905 detects the position of the rotor of motor 904 at a predetermined sampling period, and transmits the detected positional information to converter 906. Converter 906 calculates the rotational velocity of the rotor of motor 904 from the change in position of the rotor based on the positional information transmitted from encoder 905. Converter 906 then transmits, to PI controller 901, the calculated rotational velocity of the rotor as feedback velocity VFB.
Storage 907 receives break signal BSIG to be input to breaking device 908, and torque command value TCOM output from PI controller 901, and stores torque command value TCOM. Moreover, when break signal BSIG is changed from ON to OFF, storage 907 outputs torque command value TCOM at that time to PI controller 901.
PI controller 901 receives velocity command VCOM and feedback velocity VFB. PI controller 901 performs calculation to output torque command value TCOM to current controller 902. Moreover, PI controller 901 receives, from storage 907, torque command value TCOM obtained when brake signal BSIG is changed from ON to OFF.
Current controller 902 receives torque command value TCOM and feedback current IFB of the current to be supplied to motor 904, calculates an inverter drive command, and outputs the calculated inverter drive command to inverter circuit 903. Inverter circuit 903 supplies current to motor 904 based on the received inverter drive command to control the driving of motor 904.
Next, with reference to FIG. 7, PI controller 901 will be specifically described. PI controller 901 includes proportional component calculation unit 911 and integral component calculation unit 912. Proportional component calculation unit 911 and integral component calculation unit 912 each receive error velocity dV which is the difference between velocity command VCOM and feedback velocity VFB. The value calculated by proportional component calculation unit 911 from error velocity dV and the value calculated by integral component calculation unit 912 from error velocity dV are added, and torque command value TCOM is output. The output torque command value TCOM is stored in storage 907. Subsequently, as described above, torque command value TCOM obtained when brake signal BSIG is changed from ON to OFF is output from storage 907 to integral component calculation unit 912 of PI controller 901.
Accordingly, PI controller 901 uses torque command value TCOM obtained when brake signal BSIG is changed from ON to OFF as a holding torque, so that the falling of the gravity shaft can be prevented when brake signal BSIG is changed again from OFF to ON (when power starts to be supplied to motor 904) (for example, see Patent Literature (PTL) 1).